package com.junko.service.back;




import com.junko.core.base.BaseService;
import com.junko.model.back.Menu;
import com.junko.model.back.ZtreeNode;

import java.io.Serializable;
import java.util.List;

/**
 * Created by junko on 2017/4/14.
 * 后台菜单service接口
 */
public interface IMenuService extends BaseService<Menu> {
    /**
     * 根据系统ID查询顶级菜单
     * @return
     */
    List<Menu> findTopParentsBySystemId(Integer systemId);

    /**
     * 根据父菜单ID查询子菜单
     * @param parentId
     * @return
     */
    List<Menu> findByParentId(Integer parentId);
    /**
     * 获取子节点数据
     * @param systemId
     * @param parentId
     * @return
     */
    List<ZtreeNode> childNodeData(Integer systemId, Integer parentId);

    /**
     * 保存
     * @param pId  父节点ID
     * @param name 名称
     * @param orderId 编号
     * @return
     */
    Integer save(Integer pId, String name, int orderId);

    /**
     * 更新
     * @param id  id
     * @param pId 父节点ID
     * @param name 名称
     */
    boolean update(Integer id, Integer pId, String name);

    /**
     * 删除
     * @param id id
     * @return
     */
    boolean delete(Integer id);

    /**
     * 设置菜单功能
     * @param operatorId 功能ID
     */
    boolean setOperator(Integer menuId, String operatorId);

    /**
     * 修改名称
     * @param id id
     * @param name 名称
     */
    boolean rename(Integer id, String name);
}
